#ifndef __PROTOCOL_TABLE_H__
#define __PROTOCOL_TABLE_H__

#include <stdint.h>
#include "dbStatement.h"



//备注：协议属于哪个产品，产品包含哪些协议
typedef struct _PROTOCOL{
    int64_t  id;          //协议ID
    char name[32];        //协议名称
    T_PROTOCOL_TYPE  type;//协议类型,一个产品最多支持8种协议类型
    char desc[256];       //协议描述 
    struct _PROTOCOL* prev;
    struct _PROTOCOL* next;
}T_PROTOCOL;

/**
 * @brief 测点模型
 */
typedef struct _PROTOCOL_LIST{
    int  count;
    T_PROTOCOL* tail;
    T_PROTOCOL* head;
}T_PROTOCOL_LIST;


extern void dbProtocolInit();

extern int  createProtocolTable();
extern int  insertProtocol(T_PROTOCOL* protocol);
extern int  replaceProtocol(T_PROTOCOL* protocol);
extern int  deleteProtocol(T_PROTOCOL* protocol);
extern int  selectProtocol(const char* sql, T_PROTOCOL_LIST* protocolList);


#endif /* __PROTOCOL_TABLE_H__ */